function unpack_NT1065(filename_in,filename_out,L1L2)

fid = fopen(filename_in,'rb');
fid_out = fopen(filename_out,'wb');

piece = 4e6;
fseek(fid,0,1);
nword = (ftell(fid));
fseek(fid,0,-1);

nl = ceil(nword/piece);

h = waitbar(0,['Unpacking NT1065...']);
% 00:1 01:3 10:-3 11:-1, [I1 Q1 I2 Q2] MSB->LSB
LUT_Q_long2 = [1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1;1;3;-3;-1];
LUT_I_long2 = [1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1;1;1;1;1;3;3;3;3;-3;-3;-3;-3;-1;-1;-1;-1];
LUT_Q_long1 = [1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1];
LUT_I_long1 = [1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-3;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1];

for n = 0:nl-1
    npiece = min(piece,nword-n*piece);
    
    data = fread(fid, npiece,'uint8'); % read the data from the opened file - fid
    
    data_2file = zeros(2*numel(data),1);
    if L1L2 == 1
        data_2file(1:2:end) = LUT_I_long1(data+1);
        data_2file(2:2:end) = LUT_Q_long1(data+1);
    elseif L1L2 == 2
        data_2file(1:2:end) = LUT_I_long2(data+1);
        data_2file(2:2:end) = LUT_Q_long2(data+1);
    end
    fwrite(fid_out,data_2file,'schar');
    
    waitbar((n+1)/(nl),h);
end

fclose(fid);
fclose(fid_out);
close(h);